package com.jfsnpm.controller;



import java.io.File;
import java.util.Date;
import com.jfinal.core.Controller;
import com.jfinal.plugin.activerecord.Db;
import com.jfinal.plugin.activerecord.Record;
import com.jfinal.upload.UploadFile;
import com.jfsnpm.common.AppTool;
import com.jfsnpm.plugin.bjui.Bjui;
import com.jfsnpm.plugin.bjui.BjuiRender;
/**
 * 文件上传下载类
 * @author 天为之殇
 * XXX 文件上传下载待完善
 */
public class FileController extends Controller {
	/**
	 * 列表
	 */
	public void list(){
		Bjui.BjuiPageByTableName("pm_file", "name", this);
	}
	/**
	 * 上传界面
	 */
	public void show(){
		
	}
	
	/**
	 * 上传文件
	 */
	public void upload(){
		//获取文件
		UploadFile file = getFile();
		//改名
		String file_name = file.getFileName();
		String file_ext = file_name.substring(file_name.lastIndexOf(".") + 1).toLowerCase();
		file_name = file_name.substring(0,file_name.lastIndexOf("."));
		String file_id = AppTool.getUUID();
		File filepath = new File(file.getSaveDirectory()+"public"+File.separator);
		if(!filepath.exists() && !filepath.isDirectory()){
			filepath.mkdir();
		}
		file.getFile().renameTo(new File(file.getSaveDirectory()+"public"+File.separator+file_id+"."+file_ext));
		
		//记录
		Record file_rd = new Record().set("id",file_id).set("type", file_ext)
				.set("path", file.getSaveDirectory()+"public"+File.separator+file_id+"."+file_ext)
				.set("ver", "0")
				.set("name", file_name)
				.set("desc", getPara("desc"))
				.set("update_time", new Date(System.currentTimeMillis()))
				.set("update_user", getSessionAttr("userid"));
		Db.save("pm_file", file_rd);
		
		render(BjuiRender.success("上传成功！", false));
	}
	/**
	 * 下载文件
	 */
	public void download(){
		/*String filename = getPara("filename");
		if(StringUtils.isBlank(filename)){render(BjuiRender.code(801));return;}
		renderFile(filename);*/
	}
}
